package com.lxx.jmb2c.dto;

import lombok.Data;

/**
 * 会员注册数据传输对象
 * 
 * 用于接收前端传递的会员注册信息，包含手机号、邮箱、密码和验证码
 * 
 * 安全注意事项：
 * 1. 密码应该在前端加密后再传输
 * 2. 验证码应该有有效期限制
 * 3. 手机号和邮箱应该做格式校验
 * 
 * 使用示例：
 * {
 *   "mobile": "13800138000",
 *   "email": "user@example.com",
 *   "password": "encryptedPassword",
 *   "code": "123456"
 * }
 * 
 * 初学者指南：
 * - @Data 是Lombok注解，自动生成getter/setter等方法
 * - 字段命名遵循小驼峰命名法
 * 
 * @author lxx
 * @since 2025-07-02
 */
@Data
public class MemberRegisterDTO {
    /**
     * 手机号码，用于账号注册和登录
     * 格式要求：11位数字，符合中国手机号格式
     */
    private String mobile;

    /**
     * 电子邮箱，用于账号注册和登录
     * 格式要求：符合标准邮箱格式
     */
    private String email;

    /**
     * 登录密码
     * 要求：
     * - 长度8-20位
     * - 包含字母和数字
     * - 建议前端加密后传输
     */
    private String password;

    /**
     * 短信或邮箱验证码
     * 要求：
     * - 通常6位数字
     * - 有时效性(如5分钟有效)
     */
    private String code;
}
